package com.mathpractise.repository;

import com.mathpractise.model.StatisticsReport;

import java.util.Date;
import java.util.Optional;

/**
 * 统计数据访问接口
 */
public interface StatisticsRepository {
    
    /**
     * 保存统计报告
     *
     * @param report 统计报告
     */
    void save(StatisticsReport report);
    
    /**
     * 根据会话ID查找统计报告
     *
     * @param sessionId 会话ID
     * @return 统计报告
     */
    Optional<StatisticsReport> findBySessionId(String sessionId);
    
    /**
     * 删除指定日期之前的统计报告
     *
     * @param beforeDate 日期
     */
    void deleteBeforeDate(Date beforeDate);
}